home *** CD-ROM | disk | FTP | other *** search
/ Night Owl 6 / Night Owl's Shareware - PDSI-006 - Night Owl Corp (1990).iso / 002a / wa_126.zip / CONFIG.TXT < prev    next >
Text File  |  1991-10-06  |  18KB  |  403 lines

  1.  
  2.                        WIZARD'S ARENA -- RELEASE 1.26
  3.                    (C) Copyright 1991 by Douglas Summers
  4.  
  5.                                CONFIGURATION
  6.  
  7.  
  8.  
  9.    Beginning in version 1.22, WIZARD'S ARENA will get its parameters
  10.    from a text file rather than from the command line.  This file
  11.    is named "CONFIG.WA".
  12.  
  13.    Running the upgrade program will generate an initial CONFIG.WA,
  14.    which you may then edit using any simple-ASCII text editor.  If
  15.    none was made, then you should begin with a nice, blank one.
  16.  
  17.    CONFIG.WA is a simple text file, made up of individual lines.
  18.    Each line is of the format "aaaa=bbbb" where 'aaaa' is the name
  19.    of some parameter and 'bbbb' is the value to be assigned to it.
  20.    For example, the line
  21.  
  22.                   BBSNAME = The Truly Massive BBS
  23.  
  24.    is used to set the name of the BBS to be "The Truly Massive
  25.    BBS".  The equals-sign may be preceded or followed by any
  26.    number of spaces.  The line, as well, can have spaces before
  27.    the parameter-name and after the last character of the value.
  28.    Such spaces will be ignored. The values are case-insensitive:
  29.    BUT THE EXCEPTION IS THE BBS NAME, which IS case-sensitive.
  30.  
  31.    You'll note that a lot of the configuration options are related
  32.    to error-correction.  This doesn't mean that the game is 
  33.    particularly flimsy;  they're mostly stuff I found useful in
  34.    developing/debugging and saw some real-world use for.
  35.  
  36.  
  37.    GENERALLY-AVAILABLE OPTIONS
  38.    ---------------------------
  39.  
  40.      BBSNAME
  41.      -------
  42.        This sets the name of the BBS.  You MUST have this one, and,
  43.        unlike all the others, is case-sensitive.  Please, please note
  44.        that the name, once you've registered, must remain fixed.
  45.        Changing it will invalidate your registration, and you'll have
  46.        to contact me give you a new registration sequence.
  47.  
  48.      DEBUG
  49.      -----
  50.        This forces extensive debugging information to be collected.
  51.        DON'T USE THIS UNLESS YOU REALLY NEED IT.  There is no built-in
  52.        method to clean up the huge ERRORS.OUT file that will be
  53.        generated.  Turn this on with "DEBUG = Y" -- anything else means
  54.        debugging is off.
  55.  
  56.      REMOTECOLOR
  57.      -----------
  58.        This is used to set the color the user's screen is set to
  59.        when the program terminates. There are 16 possible settings:
  60.        BLACK, BLUE, GREEN, CYAN, RED, MAGENTA, BROWN, DINGY
  61.        (lo-intensity white), GRAY (hi-intensity black), HIBLUE,
  62.        HIGREEN, HICYAN, HIRED, HIMAGENTA, YELLOW and WHITE.
  63.  
  64.      LOCALCOLOR
  65.      ----------
  66.        Like REMOTECOLOR, but applies to the local terminal.
  67.  
  68.      PARANOID
  69.      --------
  70.        Used to disable the 'backdoor' functions.  These functions are
  71.        debugging aids that the author thought might be handy to leave
  72.        in, because they can be used to perform a certain amount of in-
  73.        situ diagnosis.
  74.        They are available as unlisted commands.  To see them, type '&'
  75.        for your action; nothing will happen; then enter one of the
  76.        following:
  77.  
  78.                'M' shows memory available
  79.                'E' dumps out the error log
  80.                'S' prints out certain game statistics
  81.                'K' echoes back key-codes
  82.  
  83.        There aren't any others.  Unless you're REALLY, REALLY afraid
  84.        that this information seriously compromises your BBS, you might
  85.        want to leave them available in the event a problem DOES occur.
  86.        Turn this on with "PARANOID = Y" -- anything else means that
  87.        paranoia is off (the functions are available).
  88.  
  89.  
  90.      PORT
  91.      ----
  92.        If you have nonstandard comm port or are using a fossil driver,
  93.        you can tell the game about it with the PORT parameter.  The
  94.        format for this parameter is: "PORT = aaa:i", where 'aaaa' is
  95.        the base address and 'i' is the interrupt.  For example,
  96.        "PORT = 02F8:3" sets the system to use a com-port whose base
  97.        address is 02F8 and which uses IRQ 3.
  98.        For fossil drivers, use "PORT = F:n"  where 'n' is the number
  99.        of the com-port to use the fossil driver on.
  100.  
  101.  
  102.      DOORFILE
  103.      --------
  104.        Gives the full path-and-filename of the BBS's door-information
  105.        file.  This parameter can be overridden by the command-line, but
  106.        if no parameter is given there, then this is the file used.
  107.  
  108.   
  109.    OPTIONS AVAILABLE ONLY TO REGISTERED SYSOPS
  110.    -------------------------------------------
  111.  
  112.    After you've played the game and been vastly impressed by the
  113.    sheer genius of it, you can send me money.  I'd like that.
  114.    (The SYSOP.TXT file gives details on how much and where; for now,
  115.    I'll take it as read that you've done that.)
  116.  
  117.    What you'll get back for your hard-earned cash is an eight-digit
  118.    registration code.  You should put it in your CONFIG.WA file,
  119.    where the game can find it and reward you for your generosity.
  120.  
  121.    You will, at that point, have access to a number of other parameters
  122.    which will allow you a fair amount of customization.
  123.  
  124.      APDIV, APMULT
  125.      -------------
  126.        Every creature in the game -- monsters and players alike -- 
  127.        receive a certain number of Action Points (APs) every day.
  128.        These determine how much a creature can do; every action
  129.        (with only 1 or 2 exceptions) costs APs, and when a creature
  130.        uses up its APs, it has to stop for the day.
  131.        These two parameters help determine how many APs everyone gets.
  132.        The process is:
  133.  
  134.            If a creature has an Agility of less than (or equal to)
  135.            15, it gets a number of APs equal to its Agility rating.
  136.  
  137.            If its Agility is 16 or more, it gets 15 AP, plus a certain
  138.            number determined by this formula:
  139.  
  140.                     ((Agility - 15) * APMULT) / APDIV
  141.  
  142.        For example, let's say you've set up "APMULT = 2" and "APDIV = 3".
  143.        A creature with an agility of 5 gets 5 AP (and is pretty much a
  144.        sitting duck).  Another creature, with an Agility of 47, will get
  145.  
  146.                        ((47 - 15) * 2) / 3 = 21 AP.
  147.  
  148.        Why would you want to do this?  If we simply let the number of AP
  149.        equal the Agility rating, a player could quickly get to a rating
  150.        of 50 or more -- which would allow him a great many attacks, if
  151.        he didn't have to move far to get to his target.  If his target
  152.        is a monster, that's not so bad -- but if its a player, it isn't
  153.        really fair.  The other player could be taken completely unawares
  154.        and be destroyed by someone he didn't even know was there.  In a
  155.        sense, these values set the 'dangerousness' of the game: the degree
  156.        to which a player must take precautions against unexpected attacks.
  157.  
  158.  
  159.      MONSTERSPEED
  160.      ------------
  161.        If you want the players to be mobile, but not the monsters, then
  162.        simply setting APMULT high won't really accomplish what you want.
  163.        The monsters will also be fast -- and if one happens to 'pop in'
  164.        adjacent to a player, he could get in a great many whacks before
  165.        the player has a chance to do anything about it.
  166.        The MONSTERSPEED parameter determines the rate at which the
  167.        monsters expend AP to do things.  For example, if the MONSTERSPEED
  168.        is 0, it costs them 5 times as many AP to do anything as it does
  169.        the players -- which means that they're slow and don't attack
  170.        often.  Setting it to 9 makes them about twice as mobile as the
  171.        players -- and very dangerous.  (It can be set all the way to 20).
  172.        If you want the players to focus on each other, set MONSTERSPEED
  173.        low; if you want them to become monster-obsessed, set it high.
  174.  
  175.     
  176.      ABSENCES
  177.      --------
  178.        The game only allows 64 players.  If players try the game once,
  179.        and never come back, then their player-records would sit around
  180.        forever.  The game, to get around this, counts the number of
  181.        'absences' a player has (the number of days since he last played).
  182.        If that number exceeds the ABSENCES value, his character suffers
  183.        a heart attack and leaves a corpse on the map, and his player-
  184.        record is made available for the use of other people.  Setting
  185.        this value low is probably unfair;  setting it too high might cause
  186.        the clogging earlier mentioned.  The default value of 14 seems
  187.        reasonable, but your circumstances might dictate something else.
  188.  
  189.     
  190.      TRAINCOST, TRAINSLOPE
  191.      ---------------------
  192.        Players gain experience by killing monsters (or other players).
  193.        They trade experience points (via the 'Train' command) for 
  194.        higher characteristic values, or for spell proficiency.  This
  195.        has the net effect of making them more powerful.
  196.        By default, it always costs 100 XP to train.  These two parameters
  197.        allow you to change that.
  198.        TRAINCOST determines the number of XP necessary to train the first
  199.        time.  Each successive training costs the same amount, multiplied
  200.        by 1% of the TRAINSLOPE value. an example will make that clearer.
  201.        Lets say you've set "TRAINCOST = 50" and a "TRAINSLOPE = 250".
  202.        A player will need
  203.  
  204.                              50 XP to train the 1st time,
  205.                 50 * 2.50 = 125 XP to train the 2nd time,
  206.                125 * 2.50 = 312 XP to train the 3rd time,
  207.                312 * 2.50 = 780 XP to train the 4th time,
  208.  
  209.        and so on.  The net effect is to make it harder and harder to
  210.        train, so that players do not too quickly become massively
  211.        powerful.  This particular TRAINSLOPE value, though is much too
  212.        steep.  It was chosen as an example only.  I more reasonable
  213.        value might be "TRAINCOST = 50" and" TRAINSLOPE = 110":
  214.  
  215.                                 50 XP to train the 1st time,
  216.                50 * 1.10 =  55 XP to train the 2nd time,
  217.                55 * 1.10 =  60 XP to train the 3rd time,
  218.                60 * 1.10 =  66 XP to train the 4th time, and so on.
  219.  
  220.        It will never cost more than 20000 XP to train.  Players begin
  221.        with an XP allotment of eight times the TRAINCOST value.
  222.  
  223.     
  224.      MONSTERPROB, OBJECTPROB
  225.      -----------------------
  226.        The daily maintenance routines put out monsters and random objects
  227.        like swords and shields.  Each space on the map is examined,
  228.        and may have a monster or object put into it if it is already
  229.        empty (and if the type of the terrain permits).  The probability
  230.        each space has of generating a monster is given by MONSTERPROB;
  231.        the probability of generating an item is given by OBJECTPROB.
  232.        Both are expressed in 'chances per 10000' form.
  233.        For example, lets say you have set "MONSTERPROB = 80" and 
  234.        "OBJECTPROB = 100".  This means that each empty space has a 0.8%
  235.        chance of getting a monster each day; a space that doesn't get a
  236.        monster has a 1.0% chance of getting an object.
  237.        These probabilities might not sound like much, but over the whole
  238.        map, they add up.  The map is (at present) 100 x 50 -- the settings
  239.        indicated would generate about 40 monsters PER DAY -- and about 
  240.        50 objects.
  241.        There is an added complication, however: not all of the map is
  242.        necessarily given a chance to generate.  Only the areas around the
  243.        players can generate.  This keeps huge numbers of monsters and
  244.        objects from being generated in unvisited rooms and hallways,
  245.        thereby clogging the system.
  246.  
  247.     
  248.      EXTERMINATION
  249.      -------------
  250.        Monsters that are far away from any player are pretty much useless.
  251.        They wander around, taking up precious time during the daily
  252.        maintenance and no-one would ever miss them if they disappeared.
  253.        So the system may decide to simply erase them.  It will do so a
  254.        certain    percentage of the time, as given by the EXTERMINATION
  255.        parameter.
  256.        It is expressed in 10ths-of-a-percent form, so an "EXTERMINATION =
  257.        250" gives each such 'lonely' monster a 25% chance of being snuffed
  258.        out each day.  Monsters Controlled by players, and those under
  259.        spells, and those carrying 'interesting' items, are exempt from
  260.        this form of extermination.
  261.  
  262.     
  263.      CACHE
  264.      -----
  265.        The game internally caches certain database operations for reasons
  266.        of efficiency.  If the game is running a little slow on your BBS,
  267.        try setting the this option to higher values.  (It isn't a simple
  268.        number-of-kilobytes measure).  Experimentation will probably pay off,
  269.        and can't hurt you.  Try "CACHE = 300" for best results. If the
  270.        system can't allocate that much (it would take about 64k), then
  271.        it will automatically downscale the cache and try again.
  272.        I've found that this doesn't make as much difference as one might
  273.        hope; there's roughly a 30% speedup with "CACHE = 300" (which is the
  274.        maximum).  A REAL disk cache would make a LOT more difference.
  275.  
  276.     
  277.      TIMEALLOWED
  278.      -----------
  279.        Allows you to set the maximum time (per day) that a player can stay
  280.        in the game.    For the unregistered sysops, that number is equal to
  281.        the players' total remaining time on the BBS.  For registered sysops,
  282.        it is the lower of that value and the value provided with this
  283.        option.  (Multiple entrances to the door will NOT allow the player
  284.        more time -- it adds up).  I don't think this one will matter much
  285.        to most people, since it seems that a typical 'session' of WIZARD'S
  286.        ARENA is not very long.  Still, if you want to limit your players
  287.        to only 5 minutes, use "TIMEALLOWED = 5".
  288.  
  289.      HELLOMSG
  290.      --------
  291.        If you want to send a short message to all the players as they
  292.        log onto the game, you can assign one with the HELLOMSG parameter.
  293.        Simply make a line like the following:
  294.  
  295.             HELLOMSG = Your sysop sends you greetings, mortal.
  296.  
  297.        and the user, after seeing his mail will see that on in the
  298.        text-area of the screen, just before the "You are in Wizard's
  299.        Arena" line.  You could, for example, use this to remind non-
  300.        registered users that they might like to register.
  301.  
  302.      AUTOSAVE
  303.      --------
  304.        Setting this parameter on (i.e., "AUTOSAVE = Y") will cause the
  305.        game to back up the databases before the game, and, if an error
  306.        occurs, to restore from this backup when the next player logs
  307.        in.  This won't obviate all errors -- some types of error might
  308.        cause the game to terminate OK but leave the databases in a bad
  309.        state, for example.  It by no means replaces regular backups.
  310.  
  311.      REGISTRATION
  312.      ------------
  313.        Sets the key sequence -- see SYSOP.TXT for details on registration.
  314.  
  315.      STARTBONUS
  316.      ----------
  317.        A player is given a certain number of extra AP on the first day
  318.        he's in the game.  The default is 10;  this option lets you change
  319.        that value.  Setting it higher lets new players move around more,
  320.        explore farther and play longer on their first move, which lets
  321.        them have a greater chance of survival.
  322.  
  323.      AUTOVALIDATE
  324.      ------------
  325.        When a player enters the game after another player has bombed
  326.        out, the system will try to fix the databas. The map, for example,
  327.        can be corrected from a copy kept of the original map.  If a
  328.        persistent problem comes up, you can set this option on (via
  329.        "AUTOVALIDATE = Y") to force validation even if the system hasn't
  330.        bombed out.
  331.  
  332.  
  333.    A FURTHER NOTE
  334.    --------------
  335.    Monsters move entirely during daily maintenance.  So setting
  336.    MONSTERSPEED high when you have a lot of monsters running around
  337.    will make the daily maintenance go slowly -- perhaps several minutes.
  338.    The same caveat applies to the APMULT and APDIV parameters: if
  339.    monsters have a lot of AP to spend, they'll take a little longer
  340.    to spend it.  So experiment around with good trade-offs between
  341.    the speed of your system and the effects you want to produce.
  342.  
  343.  
  344.    THE DEFAULTS
  345.    ------------
  346.    Your CONFIG.WA file MUST specify a BBSNAME.  The REGISTRATION parameter
  347.    is only meaningful if you've bought a registration sequence from the
  348.    author.  By default, DOORFILE isn't defined, which means that the
  349.    door-information file must be specified on the command-line.  Also,
  350.    the PORT parameter is not defined, which means that comm-port info
  351.    is derived from the door-information file.
  352.  
  353.    The other parameters default as follows:
  354.  
  355.  
  356.            DEBUG         = N
  357.            REMOTECOLOR   = WHITE
  358.            LOCALCOLOR    = WHITE
  359.            PARANOID      = N
  360.            APDIV         = 2
  361.            APMULT        = 1
  362.            ABSENCES      = 14
  363.            TRAINCOST     = 100
  364.            TRAINSLOPE    = 100
  365.            MONSTERPROB   = 50
  366.            OBJECTPROB    = 60
  367.            MONSTERSPEED  = 2    
  368.            TIMEALLOWED   = 60    
  369.            EXTERMINATION = 250
  370.            AUTOSAVE      = N
  371.            STARTBONUS    = 10
  372.            AUTOVALIDATE  = N
  373.  
  374.     A sysop who wishes to favor his registered users over the unregistered
  375.     ones might set up two files, one named REG.CFG and the other named
  376.     UNREG.CFG.
  377.  
  378.     For example, REG.CFG might contain:
  379.  
  380.            TRAINCOST     = 100
  381.            TRAINSLOPE    = 100
  382.            TIMEALLOWED   = 60 
  383.            BBSNAME       = The Example BBS
  384.            REGISTRATION  = 55555555
  385.  
  386.     and UNREG.CFG might have:
  387.  
  388.            TRAINCOST     = 100
  389.            TRAINSLOPE    = 110
  390.            TIMEALLOWED   = 10 
  391.            BBSNAME       = The Example BBS
  392.            REGISTRATION  = 55555555
  393.            HELLOMSG      = You should send your sysop some money, scumbag.
  394.  
  395.  
  396.     He could then arrange his batch files so that, for registered users,
  397.     REG.CFG is copied over to CONFIG.WA before WIZARD is executed.
  398.     Obviously UNREG.CFG would be copied to CONFIG.WA for unregistered
  399.     users.  The net effect is that registered users have an easier time
  400.     acquiring power, and have longer to play each day.  He also would
  401.     not be abused every time he came into the game.
  402.  
  403.